package org.ala.shopping_test.shopping_center.repository.category.entity;

import java.io.Serializable;
import java.util.List;
import java.util.ArrayList;


/**
 *	EntityFields (shopping_category)
 *  品类表
 *
 *	@author 骆毅 (ala)
 *	@date 2025-03-17 11:51:36
 */
public class ShoppingCategoryFields implements Serializable {
    /**
     *
     */
    private static final long serialVersionUID = 1L;

    /**
     *  品类id
     */
    public static String Id = "id";
    /**
     *  上级品类id
     */
    public static String ParentId = "parent_id";
    /**
     *  品类名称
     */
    public static String CategoryName = "category_name";
    /**
     *  上级品类编码-品类名首字母缩写
     */
    public static String Code = "code";
    /**
     *  记录创建时间
     */
    public static String CreateTime = "create_time";
    /**
     *  记录最后修改时间
     */
    public static String ModifyTime = "modify_time";


    /**
     *  本次查询涉及的字段名
     */
    protected List<String> fields;
    public List<String> getFields() {
        return fields;
    }
    public void setFields(List<String> fields) {
        this.fields = fields;
    }
    /**
     *  全部字段
     */
    public static ShoppingCategoryFields All() {
        ShoppingCategoryFields f = new ShoppingCategoryFields();
        List<String> fields = new ArrayList<>();
            fields.add(ShoppingCategoryFields.Id);
            fields.add(ShoppingCategoryFields.ParentId);
            fields.add(ShoppingCategoryFields.CategoryName);
            fields.add(ShoppingCategoryFields.Code);
            fields.add(ShoppingCategoryFields.CreateTime);
            fields.add(ShoppingCategoryFields.ModifyTime);
        f.fields = fields;
        return f;
    }
    /**
     *  追加 id
     */
    public static ShoppingCategoryFields Id() {
        return new ShoppingCategoryFields().id();
    }
    public ShoppingCategoryFields id() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingCategoryFields.Id);
        return this;
    }
    /**
     *  追加 parent_id
     */
    public static ShoppingCategoryFields ParentId() {
        return new ShoppingCategoryFields().parentId();
    }
    public ShoppingCategoryFields parentId() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingCategoryFields.ParentId);
        return this;
    }
    /**
     *  追加 category_name
     */
    public static ShoppingCategoryFields CategoryName() {
        return new ShoppingCategoryFields().categoryName();
    }
    public ShoppingCategoryFields categoryName() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingCategoryFields.CategoryName);
        return this;
    }
    /**
     *  追加 code
     */
    public static ShoppingCategoryFields Code() {
        return new ShoppingCategoryFields().code();
    }
    public ShoppingCategoryFields code() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingCategoryFields.Code);
        return this;
    }
    /**
     *  追加 create_time
     */
    public static ShoppingCategoryFields CreateTime() {
        return new ShoppingCategoryFields().createTime();
    }
    public ShoppingCategoryFields createTime() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingCategoryFields.CreateTime);
        return this;
    }
    /**
     *  追加 modify_time
     */
    public static ShoppingCategoryFields ModifyTime() {
        return new ShoppingCategoryFields().modifyTime();
    }
    public ShoppingCategoryFields modifyTime() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingCategoryFields.ModifyTime);
        return this;
    }
}